System and method for content transmission network selection

ABSTRACT

A content transmission selection system is disclosed. The content transmission selection system receives requests from viewers for specific video content items. Using characteristics of the designated content item, the content transmission selection system determines whether to transmit the content item over a broadcast network or a broadband network.

REFERENCE TO RELATED APPLICATIONS

This is a continuation-in-part of application Ser. No. 10/028,153, filed Dec. 20, 2001.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to systems and methods for content transmission. More specifically, the invention relates to systems and methods for determining whether to transmit content using a broadcast network or a broadband network.

2. Description of the Prior Art

The demand for the quick and easy access to a wide variety of content which may be, for example, video, data, etc., has led to the rapid growth of numerous transmission systems. For example, direct to home (DTH) satellite systems and cable systems have been deployed to compete with traditional broadcast networks. Similarly, broadband data networks, such as for example, digital subscriber line (DSL) networks and cable modem data networks have been deployed to provide high speed point-to-point data communication. Generally, the broadcast-type networks are very efficient at transmitting data items, particularly video, to a large number of viewers, but lack the capability to target specific viewers. Broadband data networks, by comparison, are very good at transmitting content to small numbers of discrete viewers and are not as efficient at simultaneously reaching large numbers of viewers.

Thus, there are numerous content transmission systems now available that did not exist even a few years ago. Applicants have noted, however, that systems and methods have not been implemented for integrating the selective use of these different systems to leverage their respective strengths. More specifically, existing systems and methods lack the capability to select the single network from a plurality of transmission networks that can most efficiently transfer a content item at a given time. Such a system or method would enable operators of transmission networks to best utilize network resources, thereby lowering costs of operation and lowering prices for consumers.

SUMMARY OF THE INVENTION

Accordingly, systems and methods for content transmission are disclosed. In systems in accordance with an illustrative embodiment of the invention, viewers enter requests for content items such as, for example, videos, at their set top box. Requests contain information such as the geographic location to which the content is to be transmitted, the time at which the viewer desires to view the content, and a price the viewer is willing to pay for the content.

The requests are transmitted over a broadband network, a back channel to a broadcast network, or both to a transmission network selector. The transmission network selector determines whether the content will be transmitted over a broadcast network or a broadband network. This determination is based on the information provided with the transmission request, information about the content itself, and information about the broadcast and broadband networks. Information about the content may comprise, for example, the duration of the content and the required bandwidth for transmission of the content. Information about the broadcast and broadband networks may comprise, for example, the available bandwidth on the networks, the geographic boundaries of the networks, and the cost of transmission at a given time of day on the networks.

Once a transmission network has been selected, the transmission network selector forwards a transmission notification to the viewer indicating the time the requested item will be transmitted and the transmission network over which it will be transmitted. Thereafter, the content is transmitted to the viewer.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be better understood after reading the following detailed description of an illustrative example thereof with reference to the appended drawings, in which:

FIG. 1 is a block diagram of a system for network transmission selection in accordance with an aspect of the invention;

FIG. 2 is a flow chart of a method for network transmission selection in accordance with the present invention;

FIG. 3 is a flow chart of an illustrative example of the steps involved in the step of determining at the content decision server whether to transmit over a broadcast or a broadband network;

FIG. 4 is a block diagram of an alternative system for network transmission selection in accordance with an aspect of the invention;

FIG. 5 is a flow chart of an alternative method for network transmission selection in accordance with the present invention; and

FIG. 6 is a block diagram of a computing device for use in a system in accordance with the invention.

DETAILED DESCRIPTION

An illustrative example of a system which meets the above-mentioned objects and provides other beneficial features will be described below with reference to FIGS. 1-6. Those skilled in the art will readily appreciate that the description given herein with respect to those figures is for explanatory purposes only and is not intended in any way to limit the scope of the invention. Throughout the description, like reference numerals will refer to like elements in the respective figures.

FIG. 1 is a diagram of a system incorporating an illustrative transmission network selection system in accordance with an aspect of the invention. At viewer location 100, viewers receive an identification from broadcast content source 123 that content items such as, for example, movies are available to the viewer upon request. When a viewer selects to view an item, the selection is transmitted either via broadband service provider 122 and Internet 121 or via a back channel of broadcast network 123 to transmission network selector 120. Transmission network selector 120 automatically determines whether to transmit the requested content via broadcast network 123 or to download the content item over broadband source 122. Once the determination has been made, network selector 120 forwards the content item to the viewer location 100 via the selected network.

As shown in FIG. 1, home or viewer location 100 contains a viewer device 101 that provides a video input to television 102. Viewer device 101 can be a set top box, a personal computer, or any electronic device capable of receiving, storing, and processing video signals. Viewer device 101 comprises a broadcast receiver 101 a for receiving video from a broadcast network such as, for example, a DTH satellite network, a terrestrial wireless network, or a cable television broadcast network. Memory 101 b may be a hard disk drive (HDD) or any memory device that enables the viewer device to store previously transmitted content, information about the content, and information about the transmission of the content. Processor 101 c enables the viewer device to perform operations such as displaying a list of available content items from which a viewer may make a transmission request. Broadband connection device 101 d provides connectivity to broadband service provider 122 and may be, for example, a DSL modem or cable modem.

Broadband service provider 122 provides a broadband connection between viewer device 101 and transmission network selector 120. Broadband service provider 122 may be, for example, a DSL service provider, or the like. Generally, service provider 122 receives high-speed connections 131 from viewer device 101 and provides access to transmission network selector 120 usually via Internet 121. As shown, service provider 122 comprises a termination device 122 a for receiving a communication connection from viewer device 100. Device 122 a may be, for example, a DSL modem.

Broadcast network 123 may be, for example a DTH satellite provider. Broadcast content is transmitted from transmission network selector 120 to viewer device 101 over broadcast network 123. Viewer device 101 contains broadcast receiver 101 a to receive broadcast content. Data is also transmitted from viewer device 101 to transmission network selector 120 over a back channel of broadcast network 123 such as, for example, a dial-up modem.

Transmission network selector 120 operates to determine whether to transmit video content to a viewer via a traditional broadcast network 123 or via broadband provider 122. Transmission network selector 120 comprises content information server 120 a, content decision server 120 b, and content media server 120 c. Content information server 120 a transmits to viewer device 101 a list of available content items from which the viewer can make a request. Content decision server 120 b receives the viewer's request for a content item, selects a network over which to transmit the content, and forwards a transmission notification to viewer device 101. Finally, content media server 120 c queues and transmits the content to the selected transmission network. If the content is to be transmitted over broadcast network 123, content media server 120 c transmits content to broadcast content transmitter, which, in turn, transmits the content over broadcast network 123 to broadcast receiver 101 a in viewer device 101. Alternatively, the content may be transmitted over broadband network 122 to viewer device 101.

FIG. 2 illustrates a flow chart of a method for content transmission network selection in accordance with an aspect of the invention. At step 210 a list of available content items such as, for example, movies or television programs is transmitted from content information server 120 a to viewer device 101. The list may be downloaded via broadcast content source 123 or broadband provider 122. At step 212, the list of available content items is received at the viewer device. The viewer may then review the list of movies and select the one(s) he or she desires to view. The viewer may also indicate when he or she desires to view the video, the price he or she is willing to pay for the video, the geographic location to which the video is to be sent, as well as other information about the transmission request. At step 214, a request for one of the videos is transmitted from viewer device 101 to content decision server 120 either via broadband network 122 or via a back channel of broadcast network 123. At step 216, the transmission request is received at content decision server 120.

At step 218, content decision server 120 automatically determines whether to transmit content using a broadcast network or a broadband network. This determination is based upon the characteristics of the transmission request, the characteristics of the content to be transmitted, the characteristics of the broadcast network, the characteristics of the broadband network, and the nature and volume of all other requests. The characteristics of the transmission request may include, for example, the geographic location to which the content is to be transmitted, the time at which the content is expected to be viewed, a dollar amount that the viewer is willing to pay for the content, or any other information about the transmission request that would be helpful in selecting a transmission network for the requested content. Characteristics of the content to be transmitted that may influence the network selection include, for example, the size and/or duration of the content, the required bandwidth for transmission of the content, features to be present with the content such as, for example, fast forward, rewind, and VCR controls, the number of requests for identical content from different viewers, or any other information about the content that would be helpful in selecting a transmission network for the requested content. Characteristics of the broadcast network that may influence the determination include, for example, the available bandwidth on the network, the geographic boundaries of the network, the cost of transmission at a given time of day on the network, or any other information about the broadcast network that would be helpful in selecting a transmission network for the requested content. The characteristics of the broadband network may include the scheduled or predicted available bandwidth on the network, the geographic boundaries of the network, the cost of transmission at a given time of day on the network, or any other information about the broadband network that would be helpful in selecting a transmission network for the requested content.

At step 220, content is queued at content media server 120 c. Content media server 120 c aggregates the content to be transmitted and formats the content for the selected transmission network. Formatting content for transmission over the selected network involves choosing a means to encapsulate the content for the selected network topology while addressing security as well as other factors. For example, a movie file stored in MPEG format may be packaged for DTH satellite broadcast by encapsulating the file in a DVB compliant spooler file which may then be routed through a transport multiplexor that applies real-time broadcast conditional access. Packaging for transmission over a broadband network such as a DSL network may include encapsulation into a TCP/IP packet stream which is encrypted and copy-protected and routed through a secure ATM switch fabric to the viewer device using secure sockets. Once the content has been formatted, content media server 120 c transmits the resulting data stream to the appropriate transmission network. At step 222, a notification of the transmission characteristics of the content is transmitted from content decision server 120 b to viewer device 101 over broadband network 122. Transmission characteristics of the content may include, for example, the time of transmission, the selected transmission network, network specific information such as the DTH transponder frequency and polarity, stream ID's and encryption/decryption codes, or any other information helpful or necessary for transmission. DTH transponder frequency and polarity is used to tune the DTH receiver to the correct transponder frequency. Stream ID's are used to identify which packets to extract in the selected MPEG multiplex stream. Decryption keys are used to decrypt data. Viewer device 101 utilizes the transmission characteristics to identify which of the connected networks to monitor for the content, how to isolate the specific content on the selected network, and how to process any security measures.

At step 224, the content is transmitted over broadcast network 123 or broadband network 122. Each content item may be sent directly to the viewer device, or, depending on the topology of the selected network, the content item may first be sent to a staging server. At step 226, viewer device 101 receives the content. If the content is being broadcast, viewer device 101 will tune to the appropriate broadcast channel or DTH transponder frequency. If the content is being transmitted over a broadband network, the viewer device will download the content through broadband connection device 101 d.

FIG. 3 is a flow chart of an illustrative example of a process for determining whether to transmit data over a broadcast or a broadband network. At step 310, content decision server 120 b gathers input data comprising the characteristics of the transmission request, the characteristics of the content to be transmitted, and the characteristics of the broadcast network and broadband networks. For example, characteristics of the transmission request may include the time (T) that the content is requested to be viewed. Characteristics of the content to be transmitted may include the number of requests for the content (N), the size of the content in megabites (S), and the minimum transfer rate for the content (R). Characteristics of the broadband network may include the cost of transport per megabite on the broadband network (bbC) and the estimated cost of transport on the broadband network (bbEC). The estimated cost of transport on the broadband network is equal to the product of the size of the content in megabites and the cost of transport per megabite on the broadband network (bbEC=S*bbC). Finally, characteristics of the broadcast network may include the cost of transport per megabite on the broadcast network (bcC), the available bandwidth on the broadcast network (bcBW), and the estimated cost of transport on the broadcast network (bcEC). The estimated cost of transport on the broadcast network is equal to the product of the size of the content in megabites and the cost of transport per megabite on the broadcast network (bcEC=S*bcC).

At step 312, content decision server 120 b determines whether the available bandwidth on the broadcast network (bcBW) is less than the minimum transfer rate for the content (R). If the available bandwidth on the broadcast network (bcBW) is less than the minimum transfer rate for the content (R), which indicates that there is not enough available bandwidth on the broadcast network, then at step 314 content decision server 120 b determines that content will be transmitted over the broadband network. If the available bandwidth on the broadcast network (bcBW) is not less than the minimum transfer rate for the content (R), then at step 316 content decision server determines whether the estimated cost of transport on the broadband network (bbEC) is less than the estimated cost of transport on the broadcast network (bcEC). If the estimated cost of transport on the broadband network (bbEC) is less than the estimated cost of transport on the broadcast network (bcEC), then at step 314 content decision server 120 b determines that content will be transmitted over a broadband network. If the estimated cost of transport on the broadband network (bbEC) is not less than the estimated cost of transport on the broadcast network (bcEC), then at step 318 content decision server 120 b determines that content will be transmitted over a broadcast network.

The process described above in connection with FIG. 3 is for illustrative purposes and may be expanded to incorporate other variables such as, for example, the time (T) that content is desired to be viewed. If the viewer does not require the content to be viewed immediately, then the transmission of the content may be scheduled for the time at which the cost of transmission is lowest. For example, the viewer may request delivery for the next day, which would enable delivery at night when transmission costs are likely to be low. Similarly, a “trickle stream”, i.e. transmitting data at a slow speed over a long period of time, may also be employed to preserve available bandwidth on a given network.

Those skilled in the art will recognize that content information server 220 a, content decision server 220 b, content media server 220 c, and viewer device 101 may comprise an appropriately programmed computing device. FIG. 4 is a block diagram of a generic computing system suitable for use in a system in accordance with the present invention. As shown, computing device 420 includes processing unit 422, system memory 424, and system bus 426 that couples various system components including system memory 424 to the processing unit 422. The system memory 424 might include read-only memory (ROM) and random access memory (RAM). The system might further include hard-drive 428, which provides storage for computer readable instructions, data structures, program modules and other data. A viewer may enter commands and information into the computer 420 through input devices such as a keyboard 440 and pointing device 442 which may be, for example, a mouse or remote control. A monitor 444 or other type of display device is also connected to the system for output. Communications device 443, which in one embodiment may be a modem, provides for communications over a network such as, for example, broadband network 131 and the Internet 121. Processor 422 can be programmed with instructions to interact with other computing systems so as to perform the algorithms described above with reference to FIGS. 2 and 3. The instructions may be received from networks 121 and 131 or stored in memory 424 and/or hard drive 428. Processor 422 may be loaded with any one of several computer operating systems such as Windows NT, Windows 2000, or Linux.

A block diagram of an alternative system for network transmission selection in accordance with an aspect of the invention is shown in FIG. 4. In the alternative system of FIG. 4, content may be transmitted to one or more available devices 401 a-e. Available devices 401 a-e may be any devices that are capable of content playback such as, for example, televisions, set top boxes, receivers, portable media players, and desktop or notebook personal computers. Available devices 401 a-e may be stationary or portable devices. Available devices 401 a-e may receive content over a cable and/or wired connection or a wireless connection. Available devices 401 a-e may be located in user location 100 or may be located at any number of remote locations.

Available devices 401 a and 401 b are connected to only broadband network 122 and not broadcast network 123. Available devices 401 d and 401 e are connected to only broadcast network 123 and not broadband network 122. Available device 401 c is connected to both broadband network 122 and broadcast network 123. As should be appreciated, despite the exemplary configuration of available devices 401 a-e in FIG. 4, this system may include any number of available devices, and any number of these available devices may be connected to only broadband network 122, only broadcast network 123, both broadcast network 123 and broadcast network 123, and also any number of additional networks such as, for example, local area networks.

A list of available devices 401 a-e associated with a particular user account may be stored in an account profile. The account profile may be stored at the requesting device or in any other device and/or memory that is accessible to the requesting device and/or transmission network selector 120. In addition to listing available devices 401 a-e, the account profile may list one or more corresponding networks to which each available device is connected. The account profile may also include routing information for each of the available devices 401 a-e.

A transmission request may be submitted from a requesting device to content decision server 120 b. The transmission request may specify one or more of available devices 401 a-e to be receiving devices to which the requested content is to be transmitted. The transmission request may also specify any number of other request characteristics such as those which have been described above. The requesting device may be any of available devices 401 a-c that are connected to broadband network 122 or another device that is connected to broadband network 122. The requesting device need not necessarily be at the same location as any of the specified receiving devices.

Upon receiving the transmission request from the requesting device, content decision server 120 b may determine over which network to transmit the requested content. This determination may be based, at least in part, on whether each receiving device is connected to only broadband network 122, only broadcast network 123, or both broadcast network 123 and broadcast network 123. An exemplary method for making this determination for each receiving device is depicted in FIG. 5. At step 510, it is determined whether the receiving device is broadcast only, meaning that it is connected to broadcast network 123 and not broadband network 122. If so, then, at step 512, the content is transmitted to the receiving device over broadcast network 123. If not, then, at step 514, it is determined whether the receiving device is broadband only, meaning that it is connected to broadband network 122 and not broadcast network 123. The determinations at steps 510 and 514 may be made by, for example, looking up the corresponding connected networks for the receiving device from the account profile. If the receiving device is broadband only, then, at step 516, the content is transmitted to the receiving device over broadband network 122. If not, then it may be concluded that the receiving device is connected to both broadcast network 123 and broadband network 122. In this case, at step 518, the transmission selection may be made based on additional factors. These additional factors may include the characteristics that were described above with reference to step 218 of FIG. 2 such as, for example, the characteristics of the transmission request, the characteristics of the content to be transmitted, the characteristics of the broadcast network, the characteristics of the broadband network, and the nature and volume of all other requests. At step 520, a transmission notification may be sent to the requesting device and/or the receiving device. The transmission notification may include, for example, an identification of the transmission network and/or the time of transmission.

Those skilled in the art understand that computer readable instructions for implementing the above described processes, such as those described with reference to FIGS. 2, 3 and 5, can be generated and stored on one of a plurality of computer readable media such as a magnetic disk or CD-ROM. Further, a computer such as that described with reference to FIG. 6 may be arranged with other similarly equipped computers in a network, and each computer may be loaded with computer readable instructions for performing the above described processes. Specifically, referring to FIG. 6, microprocessor 422 may be programmed to operate in accordance with the above-described processes.

While the invention has been described and illustrated with reference to specific embodiments, those skilled in the art will recognize that modification and variations may be made without departing from the principles of the invention as described above and set forth in the following claims. For example, while the invention has been described as being used to determine whether to transmit content over a DSL network or a DTH satellite network, the invention might also be used to determine whether to transmit content over any broadband network such as, for example, a cable system or any broadcast network such as, for example, a wireless network using modulated frequency signals. Furthermore, the list of available content items, the viewer's content transmission request, and the transmission notification may be transmitted between the transmission network selector and the viewer device using any broadband network. Accordingly, reference should be made to the appended claims as indicating the scope of the invention. 

What is claimed:
 1. A machine-readable storage device, comprising executable instructions, which, responsive to being executed by a processor, facilitate performance of operations comprising: identifying video content to be transmitted based on a transmission request that specifies a receiving device to which the video content is to be transmitted; determining whether the receiving device is communicatively coupled to a broadcast network but not to a broadband network according to an account profile associated with the receiving device; identifying the broadcast network as a transmit network for providing the video content to the receiving device responsive to the receiving device being communicatively coupled to the broadcast network but not to the broadband network; determining whether the receiving device is communicatively coupled to the broadband network but not the broadcast network according to the account profile; identifying the broadband network as the transmit network for providing the video content to the receiving device responsive to the receiving device being communicatively coupled to the broadband network but not the broadcast network; determining whether the receiving device is communicatively coupled to both the broadcast network and the broadband network according to the account profile; identifying characteristics of the video content and determining a number of requests from other receiving devices for the video content responsive to the receiving device being communicatively coupled to both the broadcast network and the broadband network; determining from the characteristics of the video content whether playback command features are present with the video content; identifying the transmit network as one of the broadcast network or the broadband network according to the playback command features that are present with the video content and according to the number of requests from the other receiving devices for the video content; and transmitting a notification of the transmit network and a time at which the video content is to be transmitted to a device that originated the transmission request.
 2. The machine-readable storage device of claim 1, wherein the playback command features comprise a fast forward control, a rewind control, pause, and a video recorder control.
 3. The machine-readable storage device of claim 1, wherein the receiving device is a different device than a requesting device from which the transmission request is submitted.
 4. The machine-readable storage device of claim 3, wherein the receiving device is remote from the requesting device.
 5. The machine-readable storage device of claim 1, wherein the receiving device is selected from a set of available devices associated with an account.
 6. The machine-readable storage device of claim 5, wherein the operations further comprise: maintaining the account profile comprising a list of a set of available devices associated with the account profile.
 7. The machine-readable storage device of claim 6, wherein the account profile further comprises routing information for the set of available devices.
 8. The machine-readable storage device of claim 1, wherein the transmitting of the notification further comprises transmitting the notification to the receiving device.
 9. A server device, comprising: a processor; and a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising: identifying video content to be transmitted based on a transmission request that specifies a receiving device to which the video content is to be transmitted; determining whether the receiving device is communicatively coupled to a broadcast network but not a broadband network according to an account profile associated with the receiving device; identifying the broadcast network as a transmit network for providing the video content to the receiving device responsive to the receiving device being communicatively coupled to the broadcast network but not the broadband network; determining whether the receiving device is communicatively coupled to a broadband network but not broadcast network according to the account profile; identifying the broadband network as the transmit network for providing the video content to the receiving device responsive to the receiving device being communicatively coupled to the broadband network but not the broadcast network; determining whether the receiving device is communicatively coupled to both the broadcast network and the broadband network according to the account profile; determining from characteristics of the video content whether playback command features are present with the video content and a number of requests from other receiving devices for the video content according to determining that the receiving device is communicatively coupled to both the broadcast network and the broadband network; identifying the transmit network as one of the broadcast network or the broadband network responsive to determining that the playback command features are present with the video content and according to the number of requests from other receiving devices for the video content; and transmitting a notification of the transmit network and a time at which the video content is to be transmitted to a device that originated the transmission request.
 10. The server device of claim 9, wherein the playback command features comprise fast forward, reverse, and pause.
 11. The server device of claim 9, wherein identifying the transmit network as one of the broadcast network or the broadband network responsive to determining that the playback command features are present with the video content further comprises: determining if there is a sufficient available bandwidth in the broadcast network; if there is sufficient available bandwidth, determining whether a cost of transmitting the video content over the broadcast network exceeds a first cost of transmitting the video content over the broadband network; if the cost of transmitting the video content over the broadcast network exceeds the first cost of transmitting the video content over the broadband network, determining to transmit the video content over the broadband network; and if the cost of transmitting the video content over the broadcast network does not exceed the cost of transmitting the video content over the broadband network, determining to transmit the video content over the broadcast network.
 12. A method, comprising: identifying, by a system comprising a processor, video content to be transmitted based on a transmission request that specifies a receiving device to which the video content is to be transmitted; determining, by the system, whether the receiving device is communicatively coupled to a broadcast network but not a broadband network according to an account profile associated with the receiving device; identifying, by the system, the broadcast network as a transmit network for providing the video content to the receiving device responsive to the receiving device being communicatively coupled to a broadcast network but not a broadband network; determining, by the system, whether the receiving device is communicatively coupled to the broadcast network but not the broadband network according to the account profile; identifying, by the system, the broadband network as the transmit network for providing the video content to the receiving device responsive to the receiving device being communicatively coupled to the broadcast network but not the broadband network; determining, by the system, whether the receiving device is communicatively coupled to both the broadcast network and the broadband network according to the account profile; determining, by the system, whether playback command features are present with the video content according to characteristics of the video content responsive to the receiving device being communicatively coupled to both the broadcast network and the broadband network; determining, by the system, a number of other receiving devices that have requested the video content; identifying, by the system, the transmit network as one of the broadcast network or the broadband network responsive to determining that the playback command features are present with the video content and according to the number of other receiving devices that have requested the video content; and transmitting, by the system, a notification of the transmit network and a time at which the video content is to be transmitted to a device that originated the transmission request.
 13. The method of claim 12, further comprising transmitting, by the system, the notification to the receiving device.
 14. The method of claim 12, wherein identifying, by the system, the transmit network as one of the broadcast network or the broadband network responsive to determining that the playback command features are present with the video content further comprises determining a geographic location of the receiving device, a cost to transmit the video content at a requested transmission time, and parameters of the video content.
 15. The method of claim 12, wherein identifying, by the system, the transmit network as one of the broadcast network or the broadband network responsive to determining that the playback command features are present with the video content further comprises determining a predicted bandwidth for the broadband network at a requested transmission time. 